This page last changed on Sep 12, 2005 by jstrachan.
The following are examples of how to use Mule inside any JBI container. They provide configuration examples for each of the open source JBI containers.
File Binding
This reads a file from one directory 'inbox' and writes it to an 'outbox' directory. The example shows how it can be configured in Mule-JBI, ServiceMix and Celtix.
Mule JBI
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jbi-container PUBLIC "-//SymphonySoft //DTD mule-jbi-configuration XML V1.0//EN"
"http://www.symphonysoft.com/dtds/mule/mule-jbi-configuration.dtd">
<jbi-container id="mule" xmlns:foo="http://www.mulejbi.org/foo/">
<mule-component name="foo:fileReceiver" className="org.mule.providers.jbi.components.MuleReceiver">
<inbound-router>
<endpoint address="file://./inbox?pollingFrequency=1000"/>
</inbound-router>
<outbound-router>
<endpoint address="container://foo:fileSender"/>
</outbound-router>
</mule-component>
<mule-component name="foo:fileSender" className="org.mule.providers.jbi.components.MuleDispatcher">
<inbound-router>
<endpoint address="container://foo:fileSender"/>
</inbound-router>
<outbound-router>
<endpoint address="file://./outbox?outputPattern=$[ORIGINALNAME]"/>
</outbound-router>
</mule-component>
</jbi-container>
ServiceMix
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:mule="http://servicemix.org/mule/">
<container id="jbi">
<property name="useMBeanServer" value="true"/>
<property name="createMBeanServer" value="true"/>
<property name="dumpStats" value="true"/>
<property name="statsInterval" value="10"/>
<components>
<component id="filePoller" service="foo:filePoller" class="org.mule.providers.jbi.components.MuleReceiver" destinationService="foo:fileSender">
<property name="workManager" ref="workManager"/>
<property name="endpoint" value="file://./inbox?pollingFrequency=1000"/>
<property name="targetServiceName" value="fileSender"/>
</component>
<component id="fileSender" service="foo:fileSender" class="org.mule.providers.jbi.components.MuleDispatcher">
<property name="endpoint" value="file://./outbox?outputPattern=$[ORIGINALNAME]"/>
</component>
</components>
</container>
<bean id="workManager" class="org.jencks.factory.WorkManagerFactoryBean">
<property name="threadPoolSize" value="30"/>
</bean>
</beans>
Celtix
Currently Celtix is using ServiceMix as its JBI container, so to deploy Mule components in Celtix then follow the same instructions as for ServiceMix
|